A graphing calculator (also graphics / graphic calculator) typically refers to a class of handheld calculators that are capable of plotting graphs, solving simultaneous equations, and performing numerous other tasks with variables. Most popular graphing calculators are therefore also programmable, allowing the user to create customized programs, typically for scientific/engineering and education applications. Due to their large displays intended for graphing, they can also accommodate several lines of text and calculations at a time. Some of the more recent graphing calculators are capable of color output, and also feature animated and interactive drawing of math plots (2D and 3D), other figures such as animated Geometry theorems, preparation of documents which can include these plots and drawings, etc. This is giving the new graphing calculators a presence even in high school courses where they were formerly disallowed. Some calculator manufacturers also offer computer software for emulating and working with handheld graphing calculators.
Graphing calculators can be sub-divided into two categories (both need the graphical display):
1. Numerical (or just graphing) Calculators - non-CAS and producing numerical results, at most represented as a fraction. In some countries, graphing calculators are not permitted in high school science tests or certain basic math tests. See examples below.
2. CAS (or symbolic) Calculators - most advanced calculators capable of producing a symbolic result (in expression or equation form), usually utilizing a Computer Algebra System (CAS). Symbolic/CAS calculators are posing a challenge to high school and undergraduate educators. They can make math easier to learn for high schoolers, provided school curriculum evolves towards this advantage.[1][2] Testing based on tedious hand calculation is also being forced to evolve towards more creative testing.[3] Such tests are often more challenging and expensive to design and can't be recycled as much, but encourage a genuine deeper appreciation of the art of mathematics and critiqueing a fallacy. CAS calculators are therefore usually permitted only in select advanced math or calculus tests, thereby being more of a classroom learning tool for many users who then switch to a permitted and speedy numerical non-CAS graphing or scientific calculator for tests and exams.
Many graphing calculators can be attached to devices like electronic thermometers, pH gauges, weather instruments, decibel and light meters, accelerometers, and other sensors and therefore function as data loggers, as well as WiFi or other communication modules for monitoring, polling and interaction with the teacher. Student laboratory exercises with data from such devices enhances learning of math, especially statistics and mechanics.
Since graphing calculators are usually readily user-programmable, such calculators are also widely used for gaming purposes, with a sizable body of user-created game software on most popular platforms. Even though handheld gaming devices fall in a similar price range, graphing calculators offer superior math programming capability for math based games. However, for developers and advanced users like researchers, analysts and gamers, 3rd party software development involving firmware mods, whether for powerful gaming or exploiting capabilities beyond the published data sheet and programming language, is a contentious issue with manufacturers and education authorities as it might incite unfair calculator use during standardized high school and college tests where these devices are targeted. Graduate (Masters) students and researchers have turned to advanced Computer Aided Math software such as that listed below, for learning as well as experimenting, with the graphing calculator which was once seen as the hallmark of the white-coated scientist, gradually being relegated to adjunct status or for limited exam taking.
Contents |
Casio produced the world's first graphics calculator, the fx-7000G, in 1985. After Casio, Hewlett Packard followed shortly in the form of the HP-28C. This was followed by the HP-28S (1988), HP-48SX (1990), HP-48S (1991), and many other models. Recent models like the current[update] HP 50g (2006), feature a computer algebra system (CAS) capable of manipulating symbolic expressions and analytic solving. An unusual and powerful CAS "calculator" is the now obsolete year 2001 Casio Cassiopeia A10 and A11 (flip top) stylus operated PDAs which actually ran the Maple V symbolic engine. The HP-28 and -48 range were primarily meant for the professional science/engineering markets; the HP-38/39/40 were sold in the high school/college educational market; while the HP-49 series cater to both educational and professional customers of all levels. The HP series of graphing calculators is best known for its Reverse Polish notation interface, although the HP-49 introduced a standard expression entry interface as well.
Texas Instruments has produced graphing calculators since 1990, the oldest of which was the TI-81. Some of the newer calculators are similar, with the addition of more memory, faster processors, and USB connection such as the TI-82, TI-83 series, and TI-84 series. Other models, designed to be appropriate for students 10–14 years of age, are the TI-80 and TI-73. Other TI graphing calculators have been designed to be appropriate for calculus, namely the TI-85, TI-86, TI-89 series, and TI-92 series (TI-92, TI-92 Plus, and Voyage 200). TI offers a CAS on the TI-89, TI-Nspire CAS and TI-92 series models with the TI-92 series featuring a QWERTY keypad. TI calculators are targeted specifically to the educational market, but are also widely available to the general public.
Graphing calculators are also manufactured by Sharp but they do not have the online communities, user-websites and collections of programs like the other brands.
Most graphing calculators, as well as some non-graphing scientific and programmer's calculators can be programmed to automate complex and frequently used series of calculations and those inaccessible from the keyboard.
The actual programming can often be done on a computer then later uploaded to the calculators. The most common tools for this include the PC link cable and software for the given calculator, configurable text editors or hex editors, and specialized programming tools such as the below-mentioned implementation of various languages on the computer side.
Earlier calculators stored programs on magnetic cards and the like; increased memory capacity has made storage on the calculator the most common implementation. Some of the newer machines can also use memory cards.
Many calculators, such as earlier TI graphing and scientific calculators will tokenize the code for a program or function, using ISO 8859 type character codes for the statements and other programming elements. The TI-92 Plus and many HP calculators read the code much like computers do and they have functions such as Chr$, Chr, Char, Asc, and the like in Basic (sometimes renamed) in addition to using somewhat modified or unmodified versions of 7-bit, 8-bit or 9-bit ISO 8859-derived character sets and other character sets running from of values of 0 to 127 (07F hex), 255 (0FF hex), or 511 (1FF hex) -- and many of them have a tool similar to the Character Map on Windows.
Three websites with extensive programming information are www.ticalc.org, www.hpcalc.org, and www.casiocalc.org. The official sites of the manufacturers and of other people like professors & teachers, students, statisticians, scientists, and organizations like university business and computer science departments, SourceForge, and the 27. November Spreadsheet Macro Programming Club are also useful. A broad array of third-party software including 3D function graphing tools, web browsers, chat, email and NNTP clients, telnet/SSH, spreadsheets, word processors, sound & graphics tools, network tools, and programming tools can be located on the internet.
A cable and/or IrDA transceiver connecting the calculator to a computer make the process easier and expands other possibilities such as on-board spreadsheet, database, graphics, and word processing programs. The second option is being able to code the programs on board the calculator itself. This option is facilitated by the inclusion of full-screen text editors and other programming tools in the default feature set of the calculator or as optional items. Some calculators have QWERTY keyboards and others can be attached to an external keyboard which can be close to the size of a regular 102-key computer keyboard. Programming is a major use for the software and cables used to connect calculators to computers, other calculators &c.
The most common programming languages used for calculators are similar to keystroke-macro languages and variants of BASIC. The latter can have a large feature set -- approaching that of Basic as found in computers -- including character and string manipulation, advanced conditional and branching statements, sound, graphics, and more including, of course, the huge spectrum of mathematical, string, bit-manipulation, number base, I/O, and graphics functions built into the machine.
Languages for programming calculators fall into all of the main groups, i.e. machine code, low-level, mid-level, high-level languages for systems and application programming, scripting, macro, and glue languages, procedural, functional, imperative &. Object-Oriented Programming can be achieved in some cases.
Most calculators capable to being connected to a computer can be programmed in assembly language and machine code, although on some calculators this is only possible through using exploits. The most common assembly and machine languages are for the purpose-designed, TMS9900, SH3, Zilog Z-80, and various Motorola chips (e.g. the modified 68000) which serve as the Central Processing Units of the machines. At least one machine in development may have a conventional 80*86 series, RISC, or purpose-built Intel chip. All of the above chips are modified to some extent from their use elsewhere. Some manufacturers do not document and even mildly discourage the assembly language programming of their machines because they must programmed in this way by putting together the program on the PC and then forcing it into the calculator by various improvised methods.
Other on-board programming languages include purpose-made languages, variants of Eiffel, Forth, and Lisp, and Command Script facilities which are similar in function to batch/shell programming and other glue languages on computers but generally not as full featured. Ports of other languages like BBC Basic and development of on-board interpreters for Fortran, Rexx, Awk, Perl, Unix shells (ksh, sh, bash, csh, zsh, tcsh &c.), other shells (DOS/Win95, OS/2, and WinNT/2000 shells as well as the related 4Dos, 4NT and 4OS2 as well as DCL), Cobol, C, Python, Tcl, Pascal, Delphi, ALGOL, and other languages are at various levels of development.
Some calculators, especially those with other PDA-like functions have actual operating systems including the TI proprietary OS for its more recent machines, MS-DOS, Windows CE, and rarely Windows NT 4.0 Embedded et seq, and Linux. Experiments with the TI-89, 92, 92+ and Voyage 200 machines show the possibility of installing some variants of other systems such as a chopped-down variant of CP/M, an operating system which has been used for portable devices in the past.
Tools which allow for programming the calculators in C/C++ and possibly Fortran and assembly language are used on the computer side, such as HPgcc, TIgcc and others. Flash memory is another means of conveyance of information to and from the calculator.
The on-board Basic variants in TI graphing calculators and the languages available on HP 48 type calculators can be used for rapid prototyping by developers, professors, and students, often when a computer is not close at hand.
Most graphing calculators have on-board spreadsheets which usually integrate with Microsoft Excel on the computer side. At this time, spreadsheets with macro and other automation facilities on the calculator side are not on the market. In some cases, the list, matrix, and data grid facilities can be combined with the native programming language of the calculator to have the effect of a macro and scripting enabled spreadsheet.
|